﻿

using Controller.i18n.entity;
using hCommand;
using hconnect;
using System.Collections.Generic;

namespace Controller
{
    public  class CraneAllocateJob91 : CraneAllocateJob {
 
        protected override   void outCarrierCheck(List<TaskCrane> removeList, TaskCrane ft) {
            
                int p = ft.des;
                CarrierSignalStatus ssOut1 = StatusCache.getSignalStatus<CarrierSignalStatus>(p);
                if (ssOut1 == null) {
                    removeList.Add(ft);
                    return;
                }
                if (ssOut1.NoFree()) {
                    if (ft.getDes() == ConstStn.Crane1Out2Stn) { 
                        if (ChangeOutTask(ConstStn.stn3, ft)) {
                            return;
                        }
                    }
                    if (ft.getDes() == ConstStn.Crane1Out1Stn) { 
                        if (ChangeOutTask(ConstStn.stn1, ft)) {
                            return;
                        }
                    }
                    if (ft.getDes() == 11) {
                        if (ChangeOutTask(14, ft)) {
                            return;
                        }
                    }
                    if (ft.getDes() == 21) { 
                        if (ChangeOutTask(24,  ft)) {
                            return;
                        }
                    }
                    removeList.Add(ft);
                    consoleOnly(InfoC.consoleOnly_crane_Working, "出料口存在物料" + ft.des);
                }
            

        }

        

    }
    public class CraneAllocateJob92 : CraneAllocateJob {

        protected override   void outCarrierCheck(List<TaskCrane> removeList, TaskCrane ft) {
            
                if (ft.getDes() == ConstStn.Crane1Out2Stn) { 
                    if (ChangeOutTask(ConstStn.stn3,  ft)) {
                        return;
                    }
                }
                if (ft.getDes() == 21) {
                    if (ChangeOutTask(ConstStn.stn3, ft)) {
                        return;
                    }
                }
                if (ft.getDes() == ConstStn.Crane1Out1Stn) { 
                    if (ChangeOutTask(ConstStn.stn1, ft)) {
                        return;
                    }
                }
                if (ft.getDes() == 11) {
                    if (ChangeOutTask(ConstStn.stn1, ft)) {
                        return;
                    }
                }
                removeList.Add(ft);
                consoleOnly(InfoC.consoleOnly_crane_Working, "资产出库入库口有料" + ft.taskNo);
           

        }

        

    }
}